Environment Variables
The following environment variables can be set (generally to any value) and will effect some aspect of operation. They should generally only be set when you are experiencing a problem. The performance related variables are more useful when used in a qacli environment for fast commands. You are unlikely to notice any difference when used with the graphical tools or when doing long analysis, viewing or report runs.
For information on how set variables, refer to Setting Environment Variables.
HELIX_QAC_BAZEL_INCLUDE_DEPENDENCIES
By default, a BAZEL synchronization will exclude dependencies from synchronization. Set this environment variable to include them when running a synchronization .
HELIX_QAC_COUT
Enabling this to one of NONE
, INFO
, ERROR
, DEBUG
, TRACE
sends the logging information at the requested level to the console. This is the same information that is also sent to the logfile.
HELIX_QAC_DISABLE_APP_COPY
On startup for any Helix QAC command (such as qacli
, qagui
etc) the software checks and copies any modified file in the 'app' folder from the installation directory into the local user data location. Setting this variable will disable this checking and copying.
HELIX_QAC_DISABLE_CCT_CHECKS
Previous version of Helix QAC did not checking for a valid CCT header. This is now checked so CCTs that previously loaded may now fail to load. Set this variable to disable the CCT checking during loading.
HELIX_QAC_DISABLE_CONFIG_COPY
On startup for any Helix QAC command (such as qacli
, qagui
etc) the software checks and copies any modified file in the 'config' folder from the installation directory into the local user data location. Setting this variable will disable this checking and copying.
HELIX_QAC_DISABLE_DEPRECATED
By default, qacli
will output a message to stderr warning you are using a deprecated qacli
command. Where possible, a suggested replacement command will be given.
To disable these messages, set the environment variable HELIX_QAC_DISABLE_DEPRECATED
to any value.
HELIX_QAC_DISABLE_SAMPLE_COPY
On startup for any Helix QAC command (such as qacli
, qagui
etc) the software checks and copies any modified sample projects from the installation directory into the local user data location. Setting this variable will disable this checking and copying.
HELIX_QAC_DISABLE_SCHEMA_CHECKS
Setting this to any value will disable all schema checking (principally for the ACF
, RCF
and prqaproject.xml
). Any ill-formed XML file will not be detected and incorrect/incomplete data may be read. You should only use this if these exact XML files have previously been checked and are known to be OK.
HELIX_QAC_DISABLE_VERSION_LOGGING
Setting this to any value will stop Helix QAC logging to the logfile the exact versions of all components used during analysis.
HELIX_QAC_ENABLE_BROADCAST
Setting this to any value will ensure the local subnet is searched for licence servers (if no licence server could be found at the configured addresses)
HELIX_QAC_EXPAND_DRIVES
By default paths are not expanded when files reside on Windows virtual drives. To get the fully expanded path then set the environmental variable HELIX_QAC_EXPAND_DRIVES
to any value.
HELIX_QAC_FAIL_DEPRECATED
By default, qacli
will output a message to stderr warning you are using a deprecated qacli
command - but it will complete as normal. qacli
can be forced to fail (return code 1, Command Line Parse Failure) when it encounters a deprecated command by setting the environment variable HELIX_QAC_FAIL_DEPRECATED
to any value.
HELIX_QAC_HB_INTERVAL
Specify the interval in seconds (default is 60) to exchange heartbeats with the license server. If 10 consecutive heartbeats are missed then the connection to the license server is dropped.
HELIX_QAC_LEGACY_NAMES
By default, more human readable names are used in reports for C++ function parameters and some function names. For example, a parameter “int x” would be reported as “int”. If this environment variable is set to any value, the older format is used and “int x” would become “, ni”.
HELIX_QAC_LTOKEN
This environment variable is now deprecated and no longer used.
HELIX_QAC_MEMORY_UPPER
Helix QAC will detect the percentage of memory in use on the current system. This variable sets the upper threshold for memory usage, above which tasks will not run. Tasks will remain in a pending state until the memory usage falls below HELIX_QAC_MEMORY_LOWER
. This takes float and integer values, e.g. 61.50, with a maximum of 100. By default, no threshold is set.
HELIX_QAC_MEMORY_LOWER
When memory usage falls below this value, any pending tasks will be analyzed. If this variable is not set, it takes the same value as HELIX_QAC_MEMORY_UPPER
.
HELIX_QAC_NO_LICENSE_CHECK
Setting this variable to any value will suppress any warning messages when no license servers have been explicitly set.
HELIX_QAC_PERIODIC_LOGGER_INTERVAL
During analysis the memory and swap usage is logged to the logfile at least every 60 seconds. Setting this variable will override the default logging period. The value should be specified as an unsigned integer i.e. the number of seconds between periodic memory usage logging messages.
HELIX_QAC_QAINJECT_PROG
Specifies one or more compilers to intercept, along with the appropriate filter to use. This can be used if you want to use something other than the default compilers and filters, and any bindings defined using this will override the default mappings read from a compiler mapping file.
HELIX_QAC_QAINJECT_GEN_TRACE
Setting this variable to any value will generate an intermediate qainject trace file as well as generating a build spec. This should only be used if directed by development or support.
HELIX_QAC_QT_DEBUG
By default, all Qt warnings have been quieted when running the various qa
* programs from a console. To see these warnings, which are mostly harmless, then set HELIX_QAC_QT_DEBUG
to any value.
HELIX_QAC_QUIT_QAX_ON_EXIT
Setting this to any value will force qaxd
to immediately quit when the qacli
command completes. Setting this may increase the time for subsequent qacli
commands to complete.
HELIX_QAC_TEMP_INCLUDE
When using Auto CCT, this environment variable can specify the folder for temporary force included files. Any force include files that are used from this directory will be preserved in the project configuration for subsequent analysis. If the variable is not set, only the default system temporary folder is checked.
HELIX_QAC_UDL
Specifies the location to a custom User Data Location (UDL). This overrides the default and any user or system defined locations. The UDL must be available in the filesystem and permissions set appropriately so that the user can read/write/delete to that location.
HELIX_QAC_WIN_SDK
This can be set to use a different SDK to analyze against for Windows Visual Studio projects (VS 2017 and above). It should be set to any valid installed SDK, for example:
You can usually see which SDKs are available by looking in this location; C:\Program Files (x86)\Windows Kits\10\bin
VALIDATE_CREDENTIALS
References to Validate tokens are stored in the User Data Location. The default location is within the UDL: app/validate_credentials
. This can be overridden by setting this variable to a pathname of your choice. It is recommended that an absolute pathname is used, for example:
VALIDATE_TOKEN_KEYSTORE_FILE
By default, Java secure storage is used to store Validate tokens and they are stored in the User Data Location. The default location is within the UDL: app/validate_tokens.jks
. This can be overridden by setting this variable to a pathname of your choice. It is recommended that an absolute pathname is used, for example: